package com.qf.dao;

import com.qf.pojo.Product;
import org.omg.PortableServer.POA;

import java.sql.SQLException;
import java.util.List;

/**
 * @author Kuke
 * @date 2023/4/23 14:35
 * 商品的数据访问接口
 */
public interface ProductDao {

    /**
     * 数据访问接口根据商品的上架日期查询最新商品
     * @return   返回商品列表
     */
    List<Product> selectNewProducts() throws SQLException;

    /**
     * 数据访问接口根据is_hot=1查询热门商品
     * @return 返回指定的商品列表
     * @throws SQLException
     */
    List<Product> selectHotProducts()  throws SQLException;

    /**
     * 数据访问接口根据商品id查询指定的商品实体
     * @param pid 商品编号
     * @return 返回商品实体
     */
    Product selectProductByPid(String pid) throws SQLException;

    /**
     * 数据访问接口查询商品分页数据
     * @param start    起始索引=(当前页码-1)*每页显示的条数
     * @param pageSize  每页显示的条数
     * @param cid      分类id
     * @return     返回商品列表数据
     */
    List<Product> selectProductByPage(int start,int pageSize,String cid) throws SQLException;

    /**
     * 获取商品的总记录数根据商品分类id
     * @param cid 分类id
     * @return 返回总记录数
     */
    int totalCount(String cid ) throws SQLException;
}
